Complex data storage systems with fully populated drive enclosures housing dynamic massive array of drives sometimes experience periods of unwanted excessive power consumption and elevated heat generation. Heat generated as a result of a large power consumption may cause increased drive failure rates, while excessive power consumption may lead to excessive operation costs and unwanted overload.
In order to prevent severe crashes due to excessive heating, a sufficient cooling regime has to be provided within the data storage system resulting in high electrical expenses driving up the operation costs.
By limiting the power consumption of storage devices for IO activity, the operational cost of the system may be significantly reduced and the life span of the data storage drives may be extended. Additionally, by reducing the power consumption in data storage systems, eco-friendly high performance computations may be attained in addition to reduction in the operational costs.
A significant amount of power savings may be achieved in data storage systems through using of staggered spinning up of the drives during “cold” boot, as well as by selective spinning up or down of drives during normal system operation. In order to achieve these objectives, a computer system extraneous to a drive enclosure is provided with the capability of controlling the spinning up or down of drives populating the drive enclosure. To provide for a quick disaster recovery, redundancy of such computer systems (or controllers) is normally introduced. An additional software entity is implemented to support the redundancy scheme which synchronizes and coordinates the activities of the computer systems accessing the same data storage device. For such software to successfully support the system operation, precise power requirements of the storage system are needed in advance.
“Green” drives have been used in contemporary storage systems that consume a moderate amount of power due to their relatively slow rotation, thus requiring lesser cooling. These drives have the capability of switching themselves into a low power mode after a certain period of inactivity. “Green” drives also permit the consumer system accessing the data storage to selectively spin up and down the disk drives. Unfortunately, high power consumption during “cold” start of the system due to a large amount of current drawn by the drives for spinning up results in elevated heat generation.
Referring to FIG. 1, in a cloud computing domain 10, several hosts or client computers (also referred to herein as compute nodes) 12 access a target storage which may be implemented as a drive enclosure 14 populated by a plurality of data storage devices 16, such as disk (rotating media) drives and/or flash (solid-state) storage, which combinably are referred to herein as drives.
In the state-of-the-art systems, the power requirements for the drives 16 must be accurately profiled and coordinated between the compute nodes 12 accessing the drive enclosure 14, which also may be referred to as a JBOD (Just Bunch of Disks) enclosure. This requires a Power Requirement Software 20 to run on the host side or on the controller (in the computing cloud) to coordinate and manage this information for the entire storage system. Alternatively, costly hardware is required which involves SAS (Serial Attached SCSI) interface and DRAM (Dynamic Random-Access Memory) to buffer the host data (I/O requests) before transferring to the drives by the controller.
The task becomes even more challenging in case of Virtual Machine environment where the information cannot be shared between different applications running on different guest operating systems where different controllers try to access the same storage device. In this situation, it is extremely difficult to coordinate information about the target storage device and this results in less than optimal power management.
Therefore, it would be highly desirable to eliminate the involvement of extraneous compute nodes (or applications) accessing the JBOD storage in the process of power management and control in the drive enclosure operation.
It also would be desirable to attain an efficient power management approach for the drive enclosure system which does not require prior knowledge of the system power requirements, i.e. precise profile of the power usage by drives under various IO conditions prior to the installation in the system.
The system shown in FIG. 1 is designed with two IO modules 18 provided within the drive disclosure 14 for redundancy purposes. Each IO module 18 includes SAS adapters 20, 22 with a corresponding PCI-e interface 24, 26, respectively, to the enclosure Central Processor Unit (CPU) 28 for connections from the host computers 12. Each CPU 28 uses a DRAM 30 for IO transfers.
The data (IO) requests 32 from respective client/compute nodes 12 (through the computing cloud 10) tunnel through the SAS port 34 of the drive enclosure 14, and the SAS adapter 20, as well as across the PCIe bus 24 to the Enclosure CPU 28, and subsequently to the DRAM 30. Once the data in question is recorded in the DRAM 30, the Enclosure CPU 28 starts sending the data from the DRAM 30 across the PCIe bus 26 to the SAS port 22. The data is further passed through the SAS expander 36 to the drives 16 via paths 38. The IO (request) is sent to the drives 16 through an SAS interface, also referred to herein as an Interposer 40. Each interposer is connected between the SAS expander 36 and the respective drive 16 housed in the enclosure 14.
The IO modules 18 are connected to each other via a dual communication channel 42 to coordinate the system management information concerning the power requirements of the system, temperature of the drives, and the information about the cooling elements.
Unfortunately, in this type of arrangement, the data (IO) transfer path through the SAS port 22, CPU 28, and the DRAM 30 creates a “bottle neck” which may undesirably slow the data tunneling through the system and may require the DRAM to buffer all of the IO in the drive enclosure. It would be highly desirable, therefore, to eliminate the need for buffering IO requests in data transmission.
As shown in FIG. 1, the prior art drive enclosure 14 uses two redundant large wattage power supplies 46 each of which is sized to meet the entire power load requirement of the system. This arrangement is defective from an efficiency standpoint.